/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package Application.Elements;

import Application.CheckResetSimulate;
import Application.UnstableException;
import java.util.ArrayList;
import java.util.List;

/**
 *
 * @author nothingam
 */
public class Oszc extends Element {
    
    /**
     * A mar megkapott ertekek tarolasara.
     */
    private List<Boolean> history;
    
    
    /**
     * Konstruktor
     */
    public Oszc() {        
        history = new ArrayList<Boolean>();
    }

    /**
     * Network hivja meg, ha a halozat mar stabil, ekkor lekeri a rakotott
     * elem erteket es eltarolja a histroy-ban
     * @return mindig false
     * @throws UnstableException 
     */
    public boolean simulate() throws UnstableException {
        history.add(inputs.get(0).getOut());
        return false;
    }

    /**
     * Kitorlni az eddigi elmentett ertekeket
     */
    public void reset() {
        history.clear();
    }

    /**
     * Megvizsgalja, hogy nincs-e egynel több bemenete, ha van hibat dob.
     * @return a hiba szovege, vagy null ha nincs hiba
     */
    public String check() {
        String result = null;
        if (inputs.size() > 1)
            result = "Hiba! Túl sok bemenet";        
        return result;
    }
    /**
     * Visszater az oszcilloszkop elmentett adataival
     * @return az elmentett adatok List<Boolean> tipusban
     */
    public List<Boolean> getHistory() {
        return history;
    }

}
